﻿//*** Guidance generated code ***//
using System;
using System.Collections.Generic;
using System.Diagnostics.Contracts;
using System.Linq;

using ProjectBase.Core;
using ProjectBase.Core.Web;

namespace ProjectBase.Mvc.Models
{
    /// <summary>
    ///     This class implements interface which serves as the data source for UI
    ///     to render some buttons for switching the MasterPage.
    ///     It is expected that it would be filled on some AOP filter
    /// </summary>
    public class SelectMasterPageItem : ISelectMasterPageItem
    {
        #region members
        string _targetWindowName = "_self";
        #endregion members

        #region properties
        /// <summary>
        ///     the URL for this action (on which would be evaluated user click evaluated)
        /// </summary>
        public virtual string ActionPath { get; set; }

        /// <summary>
        ///     Could contain the path to image
        /// </summary>
        public virtual string ImagePath { get; set; }

        /// <summary>
        ///     The alt name for the image
        /// </summary>
        public virtual string ImageAlterName { get; set; }

        /// <summary>
        ///     The name of window, in which should be result opened
        ///     (default is _self)
        /// </summary>
        public virtual string TargetWindowName
        {
            get { return _targetWindowName; }
            set { _targetWindowName = value ?? _targetWindowName; }
        }
        #endregion properties
    }
}